package com.hoshiicloud.stock.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.hoshiicloud.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 库存单据类型表实体
 *
 * @author : yangcheng
 * @date : 2019/4/30 10:36
 * @mail : maiboyc@163.com
 **/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class Wvtype implements Serializable {


    private static final long serialVersionUID = 1491464883411593285L;

    private Long id;

    // 单据类型  SOI SOO  OTI OTO POI POO STI STO
    @NotNull(message = "单据类型不能为空")
    @ApiModelProperty(name = "billtype", value = "单据类型", required = true, dataType = "java.lang.String", example = "SOI")
    private String billtype;

    // 单据类型名称 采购入库   + 采购退货   销售出库   销售退货  调拨单（.转移单） 其他入库  其他出库  盘点调整单
    @NotNull(message = "单据类型名称不能为空")
    @ApiModelProperty(name = "name", value = "单据类型名称", required = true, dataType = "java.lang.String", example = "其他入库")
    private String name;

    // 进出标志 1-入库 2-出库
    @NotNull(message = "进出标志不能为空")
    @ApiModelProperty(name = "flag", value = "进出标志", required = true, dataType = "java.lang.Integer", example = "1")
    private Integer flag;

    @TableField("createdtime")
    @ApiModelProperty(name = "createdTime", value = "创建时间", required = true, dataType = "java.util.Date", example = "2019-05-04 10:08:35", hidden = true)
    private LocalDateTime createdTime;

    @TableField("createdby")
    @ApiModelProperty(name = "createdBy", value = "创建人", required = true, dataType = "java.lang.String", example = "admin", hidden = true)
    private String createdBy;

    @TableField("updatedtime")
    @ApiModelProperty(value = "修改时间",hidden = true)
    private LocalDateTime updatedTime;

    @TableField("updateby")
    @ApiModelProperty(value = "修改人",hidden =true)
    private String updatedBy;

    @ApiModelProperty(value = "是否删除",hidden =true)
    private Integer deleted;

}
